import requests
import re

'''
    使用正则解析百度新闻网页
'''

headers = {
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36"
}

url = 'http://news.baidu.com/'
data = requests.get(url, headers=headers).content.decode('utf-8')

with open('baidu_news.html', 'w', encoding='utf-8') as f:
    f.write(data)

# 正则解析数据
# 解析每个新闻的title和url
# <a href="https://mp.weixin.qq.com/s/klOLbuP4lOYLO-7OD8Bo7A" target="_blank" class="a3" mon="ct=1&amp;a=1&amp;c=top&amp;pn=2">人民日报六篇文章，解读新中国70年奋斗历程的启示</a>

pattern_1 = re.compile('<a href="(.*?)" target="_blank" mon="(.*?)">(.*?)</a>')  # 我要a标签里面的所有内存
pattern_2 = re.compile('<a (.*?)</a>', re.S)  # <a  开头  并且以 </a> 结尾的数据   会把所有的a标签都取回来了
result = pattern_2.findall(data)
print(result)




